+2004-08-30 Matthias Clasen <mclasen@redhat.com>
+
+ * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile.
+
+2004-08-27 Matthias Clasen <mclasen@redhat.com>
+
+ Fix #151112, Olexiy Avramchenko:
+
+ * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout):
+ * gtk/gtkiconview.c (scroll_timeout, layout_callback)
+ (gtk_icon_view_item_accessible_idle_do_action):
+ * gtk/gtkcombobox.c (list_popup_resize_idle, popdown_idle)
+ (popup_idle): Protect idle callbacks and timeouts with
+ GDK_THREADS_ENTER/_LEAVE.
+
+ * gtk/gtkfilechooserbutton.c (update_dialog_idle): New function to
+ call update_dialog() from an idle with the necessary protection.
+
Mon Aug 30 01:34:42 2004 Matthias Clasen <maclas@gmx.de>
Changes to make sure input methods respect the editability
* gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value
function.
+>>>>>>> 1.5765
2004-08-26 Matthias Clasen <mclasen@redhat.com>
* modules/input/Makefile.am: Build imime.la on Windows.
+2004-08-30 Matthias Clasen <mclasen@redhat.com>
+
+ * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile.
+
+2004-08-27 Matthias Clasen <mclasen@redhat.com>
+
+ Fix #151112, Olexiy Avramchenko:
+
+ * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout):
+ * gtk/gtkiconview.c (scroll_timeout, layout_callback)
+ (gtk_icon_view_item_accessible_idle_do_action):
+ * gtk/gtkcombobox.c (list_popup_resize_idle, popdown_idle)
+ (popup_idle): Protect idle callbacks and timeouts with
+ GDK_THREADS_ENTER/_LEAVE.
+
+ * gtk/gtkfilechooserbutton.c (update_dialog_idle): New function to
+ call update_dialog() from an idle with the necessary protection.
+
Mon Aug 30 01:34:42 2004 Matthias Clasen <maclas@gmx.de>
Changes to make sure input methods respect the editability
* gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value
function.
+>>>>>>> 1.5765
2004-08-26 Matthias Clasen <mclasen@redhat.com>
* modules/input/Makefile.am: Build imime.la on Windows.
+2004-08-30 Matthias Clasen <mclasen@redhat.com>
+
+ * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile.
+
+2004-08-27 Matthias Clasen <mclasen@redhat.com>
+
+ Fix #151112, Olexiy Avramchenko:
+
+ * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout):
+ * gtk/gtkiconview.c (scroll_timeout, layout_callback)
+ (gtk_icon_view_item_accessible_idle_do_action):
+ * gtk/gtkcombobox.c (list_popup_resize_idle, popdown_idle)
+ (popup_idle): Protect idle callbacks and timeouts with
+ GDK_THREADS_ENTER/_LEAVE.
+
+ * gtk/gtkfilechooserbutton.c (update_dialog_idle): New function to
+ call update_dialog() from an idle with the necessary protection.
+
Mon Aug 30 01:34:42 2004 Matthias Clasen <maclas@gmx.de>
Changes to make sure input methods respect the editability
* gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value
function.
+>>>>>>> 1.5765
2004-08-26 Matthias Clasen <mclasen@redhat.com>
* modules/input/Makefile.am: Build imime.la on Windows.
+2004-08-30 Matthias Clasen <mclasen@redhat.com>
+
+ * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile.
+
+2004-08-27 Matthias Clasen <mclasen@redhat.com>
+
+ Fix #151112, Olexiy Avramchenko:
+
+ * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout):
+ * gtk/gtkiconview.c (scroll_timeout, layout_callback)
+ (gtk_icon_view_item_accessible_idle_do_action):
+ * gtk/gtkcombobox.c (list_popup_resize_idle, popdown_idle)
+ (popup_idle): Protect idle callbacks and timeouts with
+ GDK_THREADS_ENTER/_LEAVE.
+
+ * gtk/gtkfilechooserbutton.c (update_dialog_idle): New function to
+ call update_dialog() from an idle with the necessary protection.
+
Mon Aug 30 01:34:42 2004 Matthias Clasen <maclas@gmx.de>
Changes to make sure input methods respect the editability
* gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value
function.
+>>>>>>> 1.5765
2004-08-26 Matthias Clasen <mclasen@redhat.com>
* modules/input/Makefile.am: Build imime.la on Windows.
static gboolean
list_popup_resize_idle (gpointer user_data)
{
- GtkComboBox *combo_box = GTK_COMBO_BOX (user_data);
+ GtkComboBox *combo_box;
gint x, y, width, height;
+ GDK_THREADS_ENTER ();
+
+ combo_box = GTK_COMBO_BOX (user_data);
+
if (combo_box->priv->tree_view &&
GTK_WIDGET_MAPPED (combo_box->priv->popup_window))
{
gtk_window_move (GTK_WINDOW (combo_box->priv->popup_window), x, y);
}
+ GDK_THREADS_LEAVE ();
+
return FALSE;
}
static gboolean
popdown_idle (gpointer data)
{
- GtkComboBox *combo_box = GTK_COMBO_BOX (data);
+ GtkComboBox *combo_box;
+
+ GDK_THREADS_ENTER ();
+
+ combo_box = GTK_COMBO_BOX (data);
gtk_cell_editable_editing_done (GTK_CELL_EDITABLE (combo_box));
gtk_cell_editable_remove_widget (GTK_CELL_EDITABLE (combo_box));
g_object_unref (combo_box);
+ GDK_THREADS_LEAVE ();
+
return FALSE;
}
static gboolean
popup_idle (gpointer data)
{
- GtkComboBox *combo_box = GTK_COMBO_BOX (data);
+ GtkComboBox *combo_box;
+
+ GDK_THREADS_ENTER ();
+
+ combo_box = GTK_COMBO_BOX (data);
if (GTK_IS_MENU (combo_box->priv->popup_widget) &&
combo_box->priv->cell_view)
combo_box->priv->editing_canceled = TRUE;
gtk_combo_box_popup (combo_box);
+ GDK_THREADS_LEAVE ();
+
return FALSE;
}
GtkWidget *dialog);
static gboolean update_dialog (gpointer user_data);
+static gboolean update_dialog_idle (gpointer user_data);
static void update_entry (GtkFileChooserButton *button);
return FALSE;
}
+static gboolean
+update_dialog_idle (gpointer user_data)
+{
+ gboolean result;
+
+ GDK_THREADS_ENTER ();
+ result = update_dialog (user_data);
+ GDK_THREADS_LEAVE ();
+
+ return result;
+
+}
+
/* ************************ *
* Child-Widget Callbacks *
* ************************ */
/* We do this in an idle handler to avoid totally screwing up chooser_entry's
* completion */
if (priv->update_id != 0)
- priv->update_id = g_idle_add (update_dialog, user_data);
+ priv->update_id = g_idle_add (update_dialog_idle, user_data);
}
{
GtkIconView *icon_view;
gdouble value;
+
+ GDK_THREADS_ENTER ();
icon_view = data;
gtk_icon_view_update_rubberband (icon_view);
+ GDK_THREADS_LEAVE ();
+
return TRUE;
}
{
GtkIconView *icon_view;
+ GDK_THREADS_ENTER ();
+
icon_view = GTK_ICON_VIEW (user_data);
icon_view->priv->layout_idle_id = 0;
gtk_icon_view_layout (icon_view);
+ GDK_THREADS_LEAVE();
+
return FALSE;
}
GtkIconView *icon_view;
GtkTreePath *path;
+ GDK_THREADS_ENTER ();
+
item = GTK_ICON_VIEW_ITEM_ACCESSIBLE (data);
item->action_idle_handler = 0;
- if (item->widget == NULL)
- return FALSE;
-
- icon_view = GTK_ICON_VIEW (item->widget);
+ if (item->widget != NULL)
+ {
+ icon_view = GTK_ICON_VIEW (item->widget);
+ path = gtk_tree_path_new_from_indices (item->item->index, -1);
+ gtk_icon_view_item_activated (icon_view, path);
+ gtk_tree_path_free (path);
+ }
- path = gtk_tree_path_new_from_indices (item->item->index, -1);
- gtk_icon_view_item_activated (icon_view, path);
- gtk_tree_path_free (path);
+ GDK_THREADS_LEAVE ();
return FALSE;
}
gtk_text_iter_forward_chars (&start, offset);
gtk_text_iter_forward_chars (&end, offset + n_chars);
- gtk_text_buffer_delete_interactive (text_view->buffer, &start, &end);
+ gtk_text_buffer_delete_interactive (text_view->buffer, &start, &end,
+ text_view->editable);
return TRUE;
}
static gboolean
gtk_tree_view_search_entry_flush_timeout (GtkTreeView *tree_view)
{
+ GDK_THREADS_ENTER ();
+
gtk_tree_view_search_dialog_hide (tree_view->priv->search_window, tree_view);
tree_view->priv->typeselect_flush_timeout = 0;
+
+ GDK_THREADS_LEAVE ();
+
return TRUE;
}